r + s == if isint(r)
== then if isint(s) then r + s else let i,j = s in <(r * j) + i, j> fi
== else let p,q = r == else in
== else if isint(s) then <p + (s * q), q> else let i,j = s in <(p * j) + (i * q), q * j> fi
== fi
r + s == if isint(r;tt;ff)
== then if isint(s;tt;ff) then r + s else let i,j = s in <(r * j) + i, j> fi
== else let p,q = r == else in
== else if isint(s;tt;ff) then <p + (s * q), q> else let i,j = s in <(p * j) + (i * q), q * j> fi
== fi